package com.southminority.ethnic.pojo;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 联系信息实体类
 * 
 * @author SouthMinority
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("contact_info")
public class ContactInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 联系信息ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 联系方式类型：address-地址，phone-电话，email-邮箱，website-网站，social-社交媒体
     */
    private String type;

    /**
     * 联系方式标题
     */
    private String title;

    /**
     * 图标类名（FontAwesome）
     */
    private String icon;

    /**
     * 联系方式内容（JSON格式存储多行信息）
     */
    private String content;

    /**
     * 描述信息
     */
    private String description;

    /**
     * 关联机构ID
     */
    private Long organizationId;

    /**
     * 是否主要联系方式：1-是，0-否
     */
    private Integer isPrimary;

    /**
     * 是否公开显示：1-是，0-否
     */
    private Integer isPublic;

    /**
     * 显示顺序
     */
    private Integer displayOrder;

    /**
     * 排序
     */
    private Integer sortOrder;

    /**
     * 状态：1-启用，0-禁用，-1-已删除
     */
    private Integer status;

    /**
     * 关联地图位置配置ID
     */
    private Long mapLocationId;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
} 
